package alo.p3.work;

import alo.p3.ListNode;

//把循环链表分割成长度相等的两部分，或总长度为奇数，则第一个=第二个+1；
public class SplitList {
    //利用Floyd算法找到链表的中间结点，然后再形成循环链表
    SplitList(ListNode head,ListNode head1,ListNode head2){
        ListNode slow=head,fast=head;
        while (fast.getNext()!=head&&fast.getNext().getNext()!=head){
            slow=slow.getNext();
            fast=fast.getNext().getNext();
        }
        //如果结点数为奇数
        if (fast.getNext()==head){
        }else {
            //如果结点为偶数
            fast=fast.getNext();
        }
        head1=head;
        head2=slow.getNext();
        slow.setNext(head1);
        fast.setNext(head2);
    }

}
